home *** CD-ROM | disk | FTP | other *** search
/ Micromanía 92 / CDMM92_1.ISO / SOF 2 SDK / sof2sdk-101.msi / _92D6AC311BB48EBA344BBABC89DA6AB0 / _194C78A2DB6942D89AF2CD87CB91D233 < prev    next >
Encoding:
Text File  |  2002-06-06  |  4.4 KB  |  188 lines

  1. // Copyright (C) 2001-2002 Raven Software.
  2. //
  3. #include "../game/q_shared.h"
  4. #include "gt_public.h"
  5.  
  6. // this file is only included when building a dll
  7. // gt_syscalls.asm is included instead when building a qvm
  8.  
  9. static int (QDECL *syscall)( int arg, ... ) = (int (QDECL *)( int, ...))-1;
  10.  
  11. void dllEntry( int (QDECL *syscallptr)( int arg,... ) ) 
  12. {
  13.     syscall = syscallptr;
  14. }
  15.  
  16. int PASSFLOAT( float x ) 
  17. {
  18.     float    floatTemp;
  19.     floatTemp = x;
  20.     return *(int *)&floatTemp;
  21. }
  22.  
  23. void trap_Print( const char *string ) 
  24. {
  25.     syscall( GT_PRINT, string );
  26. }
  27.  
  28. void trap_Error( const char *string ) {
  29.     syscall( GT_ERROR, string );
  30. }
  31.  
  32. int trap_Milliseconds( void ) 
  33. {
  34.     return syscall( GT_MILLISECONDS ); 
  35. }
  36.  
  37. void trap_Cvar_Register ( vmCvar_t *cvar, const char *var_name, const char *value, int flags, float MinValue, float MaxValue ) 
  38. {
  39.     syscall( GT_CVAR_REGISTER, cvar, var_name, value, flags, PASSFLOAT(MinValue), PASSFLOAT(MaxValue) );
  40. }
  41.  
  42. void trap_Cvar_Update( vmCvar_t *cvar ) 
  43. {
  44.     syscall( GT_CVAR_UPDATE, cvar );
  45. }
  46.  
  47. void trap_Cvar_Set( const char *var_name, const char *value ) 
  48. {
  49.     syscall( GT_CVAR_SET, var_name, value );
  50. }
  51.  
  52. int trap_Cvar_VariableIntegerValue( const char *var_name ) 
  53. {
  54.     return syscall( GT_CVAR_VARIABLE_INTEGER_VALUE, var_name );
  55. }
  56.  
  57. void trap_Cvar_VariableStringBuffer( const char *var_name, char *buffer, int bufsize ) 
  58. {
  59.     syscall( GT_CVAR_VARIABLE_STRING_BUFFER, var_name, buffer, bufsize );
  60. }
  61.  
  62.  
  63.  
  64. void trap_Cmd_Restart ( int delay )
  65. {
  66.     syscall ( GT_RESTART, delay );
  67. }
  68.  
  69. void trap_Cmd_TextMessage ( int client, const char* message )
  70. {
  71.     syscall ( GT_TEXTMESSAGE, client, message );
  72. }
  73.  
  74. void trap_Cmd_RadioMessage ( int client, const char* message )
  75. {
  76.     syscall ( GT_RADIOMESSAGE, client, message );
  77. }
  78.  
  79. int trap_Cmd_RegisterSound ( const char* sound )
  80. {
  81.     return syscall ( GT_REGISTERSOUND, sound );
  82. }
  83.  
  84. void trap_Cmd_StartGlobalSound ( int sound )
  85. {
  86.     syscall ( GT_STARTGLOBALSOUND, sound );
  87. }
  88.  
  89. void trap_Cmd_StartSound ( int sound, vec3_t origin )
  90. {
  91.     syscall ( GT_STARTSOUND, sound, origin );
  92. }
  93.  
  94. int trap_Cmd_RegisterEffect ( const char* effect )
  95. {
  96.     return syscall ( GT_REGISTEREFFECT, effect );
  97. }
  98.  
  99. void trap_Cmd_PlayEffect ( int effect, vec3_t origin, vec3_t angles )
  100. {
  101.     syscall ( GT_PLAYEFFECT, effect, origin, angles );
  102. }
  103.  
  104. int trap_Cmd_RegisterIcon ( const char* icon )
  105. {
  106.     return syscall ( GT_REGISTERICON, icon);
  107. }
  108.  
  109. void trap_Cmd_SetHUDIcon ( int index, int icon )
  110. {
  111.     syscall ( GT_SETHUDICON, index, icon );
  112. }
  113.  
  114. void trap_Cmd_AddTeamScore ( team_t team, int score )
  115. {
  116.     syscall ( GT_ADDTEAMSCORE, team, score );
  117. }
  118.  
  119. void trap_Cmd_AddClientScore ( int clientid, int score )
  120. {
  121.     syscall ( GT_ADDCLIENTSCORE, clientid, score );
  122. }
  123.  
  124. qboolean trap_Cmd_RegisterItem ( int itemid, const char* name, gtItemDef_t* def )
  125. {
  126.     return (qboolean)syscall ( GT_REGISTERITEM, itemid, name, def );
  127. }
  128.  
  129. qboolean trap_Cmd_RegisterTrigger ( int trigid, const char* name, gtTriggerDef_t* def )
  130. {
  131.     return (qboolean)syscall ( GT_REGISTERTRIGGER, trigid, name, def );
  132. }
  133.  
  134. void trap_Cmd_ResetItem ( int itemid )
  135. {
  136.     syscall ( GT_RESETITEM, itemid );
  137. }
  138.  
  139. void trap_Cmd_GetClientName ( int clientid, const char* buffer, int buffersize )
  140. {
  141.     syscall ( GT_GETCLIENTNAME, clientid, buffer, buffersize );
  142. }
  143.  
  144. void trap_Cmd_GetClientItems ( int clientid, int* buffer, int buffersize )
  145. {
  146.     syscall ( GT_GETCLIENTITEMS, clientid, buffer, buffersize );
  147. }
  148.  
  149. qboolean trap_Cmd_DoesClientHaveItem ( int clientid, int itemid )
  150. {
  151.     return (qboolean) syscall ( GT_DOESCLIENTHAVEITEM, clientid, itemid );
  152. }
  153.  
  154. void trap_Cmd_GetClientOrigin ( int clientid, vec3_t origin )
  155. {
  156.     syscall ( GT_GETCLIENTORIGIN, clientid, origin );
  157. }
  158.  
  159. void trap_Cmd_GiveClientItem ( int clientid, int itemid )
  160. {
  161.     syscall ( GT_GIVECLIENTITEM, clientid, itemid );
  162. }
  163.  
  164. int trap_Cmd_GetClientList ( team_t team, int* clients, int clientcount )
  165. {
  166.     return syscall ( GT_GETCLIENTLIST, team, clients, clientcount );
  167. }
  168.  
  169. void trap_Cmd_TakeClientItem ( int clientid, int itemid )
  170. {
  171.     syscall ( GT_TAKECLIENTITEM, clientid, itemid );
  172. }
  173.  
  174. void trap_Cmd_SpawnItem ( int clientid, vec3_t origin, vec3_t angles )
  175. {
  176.     syscall ( GT_SPAWNITEM, clientid, origin, angles );
  177. }
  178.  
  179. void trap_Cmd_UseTargets ( const char* targetname )
  180. {
  181.     syscall ( GT_USETARGETS, targetname );
  182. }
  183.  
  184. void trap_Cmd_GetTriggerTarget ( int triggerid, const char* buffer, int buffersize )
  185. {
  186.     syscall ( GT_GETTRIGGERTARGET, triggerid, buffer, buffersize );
  187. }
  188.